Acoustic echo cancellation (AEC) is used in telephony to describe a process of removing an echo from a voice communication to improve quality of a telephone call. The telephone call, for example, may be a domestic call, an international call, a Voice over Internet Protocol (VoIP) call, etc. Large network delays in VoIP calls specifically cause even a slight echo to be very discernible, irrespective of an operating mode of a user (e.g., handset mode, headset mode, speakerphone mode, etc.).
A primary challenge in AEC is to build a reliable model of an echo path encountered by a speech signal that plays out of an audio transducer. Additional requirements for ensuring a full-duplex communication for participants in a VoIP call in various operating scenarios like double talk render the challenge even more complex.
Typical implementations may have attempted to address these issues by implementing a Least Mean Square (LMS) algorithm, accompanied by a non-linear processor (NLP), using power measurements to control adaptive filter updates in an attempt to cancel the echo. The attempt, however, may result in non full-duplex performance, under cancellation of the echo, and/or over cancellation of the echo. Additionally, the quality of the communication may sound choppy or clipped to the participants.
Other features of the present embodiments will be apparent from the accompanying drawings and from the detailed description that follows.